<?php

class Usuarios_RecuperarcontrasenaController extends Zend_Controller_Action {
    private $imgpng;
	public function init() {

	}
	
	public function indexAction() {
		$form = new Usuarios_Form_Contrasena();
		$form->setAction ( $this->view->baseUrl("/usuarios/recuperarcontrasena/enviarcontrasena") );
	    $form->recoverFromRedirect();
		$this->view->form = $form;
	}
	
    public function enviarcontrasenaAction(){
        $form = new Usuarios_Form_Contrasena();
        if($this->getRequest()->isPost() && $form->isValid($this->getRequest()->getPost())){
			try {
			    $usuariosTable = new Usuarios_Model_DbTable_Usuarios();
			    
			    $datos = $form->getValues ();
//			    Zend_Debug::dump($datos);
			    
				$row = $usuariosTable->fetchRow("nombreusuario='{$datos["nombreusuario"]}' AND emailexterno='{$datos["emailexterno"]}' ");
				if(is_null($row)) {
					throw new Exception("Datos inválidos. Por favor verifique la información.");
					return $row;
				}
				
				$usuarios = new Usuarios_Model_Usuarios ( );
			    
			    $clave = substr($datos["imgvalidation"]["id"],0,5);
			    $this->imgpng = $datos["imgvalidation"]["id"];
			    $datosu["codusuario"] = $row->codusuario;
			    $datosu["clave"] = md5 ( $clave );
			    
//			    Zend_Debug::dump($datosu);
			    $usuarios->guardarUsuario( $datosu);

				$this->view->priorityMessenger("Los datos se han guardado correctamente", "success");
				
				$usuarios->notificarContrasena($row->codusuario,$clave);
			} catch (Exception $e) {
				echo $this->view->priorityMessenger($e->getMessage(), "error");
			}
        } else {
            $form->setStateRedirect();
        }
//        exit();
        $this->_helper->redirector("index");
	}
	
    public function postDispatch(){
        $sesionImagen = new Zend_Session_Namespace("IMAGEN");
		$ruta_archivos = APPLICATION_PATH."/../cna/captcha/".$sesionImagen->file;
		if (file_exists($ruta_archivos)){
		   // unlink($ruta_archivos);
		}
        $sesionImagen->__unset("IMAGEN");
    }
    
}

